求"软件复用与构件技术"的概念和定义

来源:百度知道 编辑:UC知道 时间:2024/05/29 17:41:14
只是需要概念和定义,其他就免了

软件复用(SoftWare Reuse)是将已有软件的各种有关知识用于建立新的软件,以缩减软件开发和维护的花费。软件复用是提高软件生产力和质量的一种重要技术。早期的软件复用主要是代码级复用,被复用的知识专指程序,后来扩大到包括领域知识、开发经验、设计决定、体系结构、需求、设计、代码和文档等一切有关方面。

构件技术

随着软件复杂度的与日俱增,传统的把整个软件的源程序拿来静态编译的方法显然不适合了。在这个前提下, 产生了软件拼装模式,把软件分成一个个相对独立的目标代码模块, 称之为构件 。

软件开发人员只需要做和自己相关的构件,编译通过,就能够拿来和其他模块组装在一起使用了。通过装卸实现某个功能的构件,就可以实现对系统的灵活升级。

如今,已经成熟且广为使用的构件技术有微软的COM(Component Object Model) ,OMG 组织的CORBA (Common Object Request Broker Architecture) 等等,用它们生成的构件都是基于二进制目标代码的。现在大行其道的Java 和. NET ,虽然生成的程序都是基于中间代码的,但也处处体现着构件技术的思想。在本文中,所提及的构件都是指的二进制构件。

面向对象技术实现了软件源代码层次的复用,提高了软件开发人员的生产率。构件技术是对面向对象技术的深化,实现了二进制层次上软件的复用,进一步提升了软件开发的效率。根据构件技术,软件系统可以拆分成相对独立的构件,构件之间通过约定的接口进行数据交换和信息传递。构件可以用不同的语言编写,只要符合一组二进制规范即可,这样大大提高了开发的灵活度。